[tune] Initial Commit for Tune CLI#3983
Conversation
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
$ tune list-trials ~/ray_results/gym/GoalHalfCheetah/v0/2019-03-03T19-19-32-goal-conditioned-sac-test-1/
Traceback (most recent call last):
File "/home/kristian/conda/envs/softlearning/bin/tune", line 11, in <module>
load_entry_point('ray', 'console_scripts', 'tune')()
File "/home/kristian/conda/envs/softlearning/lib/python3.6/site-packages/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/home/kristian/conda/envs/softlearning/lib/python3.6/site-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/home/kristian/conda/envs/softlearning/lib/python3.6/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/kristian/conda/envs/softlearning/lib/python3.6/site-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/kristian/conda/envs/softlearning/lib/python3.6/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/home/kristian/github/hartikainen/ray/python/ray/tune/scripts.py", line 20, in list_trials
commands.list_trials(experiment_path, sort)
File "/home/kristian/github/hartikainen/ray/python/ray/tune/commands.py", line 145, in list_trials
lambda t: datetime.fromtimestamp(t).strftime(TIMESTAMP_FORMAT))
File "/home/kristian/conda/envs/softlearning/lib/python3.6/site-packages/pandas/core/series.py", line 3194, in apply
mapped = lib.map_infer(values, f, convert=convert_dtype)
File "pandas/_libs/src/inference.pyx", line 1472, in pandas._libs.lib.map_infer
File "/home/kristian/github/hartikainen/ray/python/ray/tune/commands.py", line 145, in <lambda>
lambda t: datetime.fromtimestamp(t).strftime(TIMESTAMP_FORMAT))
OverflowError: timestamp out of range for platform time_tipdb> l
142 if "last_update_time" in checkpoints_df:
143 from pprint import pprint; import ipdb; ipdb.set_trace(context=30)
144
145 datetime_series = checkpoints_df["last_update_time"].dropna()
146 datetime_series = datetime_series.apply(
--> 147 lambda t: datetime.fromtimestamp(t).strftime(TIMESTAMP_FORMAT))
148 checkpoints_df["last_update_time"] = datetime_series
149
150 if "logdir" in checkpoints_df:
151 # logdir often too verbose to view in table, so drop experiment_path
152 checkpoints_df["logdir"] = checkpoints_df["logdir"].str.replace(
ipdb> checkpoints_df
trainable_name ... last_update_time
0 ExperimentRunner ... -inf
1 ExperimentRunner ... -inf
2 ExperimentRunner ... -inf
[3 rows x 5 columns] |
|
I did some testing with this. Overall it feels very neat, but there were some problems with the |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Jenkins tests passed before last commit, which was only a test change; relevant travis tests passed. |
|
Test PASSed. |
| commands.list_experiments(project_path, info_keys=("total_trials", )) | ||
| captured = capsys.readouterr().out.strip() | ||
| lines = captured.split("\n") | ||
| assert sum("1" in line for line in lines) >= 3 |
There was a problem hiding this comment.
should this be assert sum("1" in line for line in lines) >= num_experiments instead of 3
This introduces a light CLI for Tune.
TODOs:
doc/source/tune-usage.rsttune lscc: @andrewztan